#ifndef __SCENE_HPP__
#define __SCENE_HPP__

namespace m3g
{
    class World;
    class Graphics3D;
    class Camera;
    class Background;
}

namespace m3g_viewer
{


/**
 * 
 */
class Scene
{
public:
    Scene ();
    ~Scene ();

    void render () const;

    void load (const char* name);

    m3g::Camera* get_camera () const;

    m3g::World* get_world () const;

    m3g::Graphics3D* g3d;
    m3g::World*      world;
    m3g::Camera*     camera;
    m3g::Camera*     scene_camera;
    m3g::Background* background;
};



} //　namespace m3g_viewer

#endif
